package constants;
/**
 * 
 * @author christopher
 * This Enum will serve as a central point of reference to the various
 * events used in the application.
 */

public enum Events {
	//The events are published each time: 

	NEWGAME,          //a new game should start
	DICETHROW,        //the die is thrown
	DICETHROWUPDATE,  //after DICETHROW so that the view can do appropriate animations
	MOVE,             //a player's piece is moved 
	SAVE_GAME,        //the game should be saved
	LOAD_GAME,        //a game should be loaded
	ERROR,            //an error occurs, can also be used to display any message on screen.
	PLAYERNAME,       //a player changes his name
	UPDATE,           //any event occurs (this will be published when view should redraw)
	CHANGE_RULES,     //the rules change
	TIME,             //the turn timer ticks
	BATTLE,			  //opponents battle
	BATTLE_ANS,		  //battle answer
	MUSIC,			  //music ON/OFF
	WIN,			  //a player has won 
	END_GAME		  //the game ends
}